package com.desaysv.dragrvitem.item;

import androidx.annotation.NonNull;

import com.desaysv.dragrvitem.adapter.holder.ViewHolderManager;

/**
 * 自定义Item管理类 可以获取item类型标识和ViewHolderManager
 * @see <a href="https://juejin.cn/post/6844903472601497614"/>
 * @see <a href="https://github.com/free46000/MultiItem"/>
 */
public interface ItemManager {
    @NonNull
    String getItemTypeName();

    /**
     * 返回自定义的ViewHolderManager，若为null则从根据本class查找注册的ViewHolderManager
     *
     * @return 返回自定义的ViewHolderManager
     */
    ViewHolderManager getViewHolderManager();
}
